//
//  ByBaseViewController.h
//  beibei_ios
//
//  Created by hebidu on 16/4/15.
//  Copyright © 2016年 hebidu. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "UIViewController+LJWKeyboardHandlerHelper.h" // 键盘辅助（点击输入框，自动根据键盘改变输入框位置）

#import "ByInteractiveController.h"

/** 朱凯 982942570@qq.com */

/** 导航栏按钮的类型 */
typedef enum : NSUInteger {
    ByNaviImageItem     = 1 << 0,       // 图片
    ByNaviTextItem      = 1 << 1,       // 文字
} ByNaviItemType;


/** Controller 基类 */
@interface ByBaseViewController : UIViewController <UINavigationControllerDelegate>

/** 互动手势 */
@property (nonatomic, strong) ByInteractiveController *interactiveTransition;

/** 是否是模态，可能影响leftAction方法 */
@property (nonatomic, assign) BOOL isModal;
///** 是否是回复，是否调用三方键盘 */
//@property (nonatomic, assign) BOOL isKey;
#pragma mark - 自定义基类方法（有的可直接调用，有的则需要覆写）
/** 快捷设置导航栏属性，在viewWillAppear 方法中调用该方法并设置需要的状态
 translucent: YES->半透明 NO->非半透明
 light:       YES->白色 NO->黑色
 */
- (void)setNaviAttributeWithTranslucent:(BOOL)translucent
                   stateBarLightContent:(BOOL)light;

/** 创建导航栏返回按钮 */
- (void)createLeftBackBarButtonItem;

/** 创建导航栏左侧按钮（图片或文字）*/
- (void)createLeftBarButtonItem:(NSString *)name type:(ByNaviItemType)type;

/**创建导航栏有色按钮*/
- (void)_createLeftBackBarButton;

/** 左侧按钮点击事件 */
- (void)leftAction:(UIButton *)btn;

/** 创建导航栏右侧按钮（图片或文字) */
- (void)createRightBarButtonItem:(NSString *)name type:(ByNaviItemType)type;

/**右侧按钮点击事件*/
- (void)rightAction:(UIButton *)btn;

/**键盘下降事件*/
- (void)keyboardDown;
@end
